package com.es.designmode.templatemethod;

/**
 * 模板方法模式
 * 定义一个操作中的算法的骨架，而将一些步骤延迟到子类中
 * 模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤
 *
 * @author Will
 */
public class ClientSide {

    public static void main(String[] args) {

        AbstractClass abs;

        abs = new ConcreteClassA();
        abs.TemplateMethod();

        abs = new ConcreteClassB();
        abs.TemplateMethod();
    }
}
